﻿namespace MicroCloud.Utils
{
    /// <summary>
    /// 创建审计信息接口
    /// </summary>
    public interface ICreationAudited : ICreatedTime, ICreationAuditedBase
    {
        /// <summary>
        /// 获取或设置 创建者编号
        /// </summary>
        [UserFlag]
        [DisplayName("创建者编号")]
        string CreatorId { get; set; }

    }

    /// <summary>
    /// 创建审计信息接口
    /// </summary>
    /// <typeparam name="TUserKey">用户实体主键类型</typeparam>
    public interface ICreationAudited<TUserKey> : ICreatedTime, ICreationAuditedBase
        where TUserKey : struct
    {
        /// <summary>
        /// 获取或设置 创建者编号
        /// </summary>
        [UserFlag]
        [DisplayName("创建者编号")]
        TUserKey? CreatorId { get; set; }

    }

    /// <summary>
    /// 创建审计信息基接口
    /// </summary>
    public interface ICreationAuditedBase
    { }

}
